<%@ page contentType="text/html;charset=UTF-8" %>
<%@ include file="/WEB-INF/views/include/taglib.jsp"%>
<div class="content-wrap">
    <div class="wrapper" style="bottom: 50px;">
        <ul class="nav nav-tabs">
            <li>
                <a href="#"   onclick="loadDiv('mainCenterDiv','${ctx}/gen/genTable/index')">业务表列表</a>
            </li>
            </li>
            <li class="active">
                <a href="#" onclick="loadDiv('mainCenterDiv','${ctx}/gen/genTable/form')">
                    <c:choose>
                        <c:when test="${genTable.id=='' || genTable.id==null}">
                            业务表添加
                        </c:when>
                        <c:otherwise>业务表修改</c:otherwise>
                    </c:choose>
                </a>
            </li>
            <li>
                <a href="#" onclick="loadDiv('mainCenterDiv','${ctx}/gen/genScheme/index')">方案列表</a>
            </li>
            <li>
                <a href="#" onclick="loadDiv('mainCenterDiv','${ctx}/gen/genScheme/form')">方案添加</a>
            </li>

        </ul>
        <section class="panel panel-default">
            <div class="panel-body">
                <div class="col-lg-12">
                    <c:choose>
                        <c:when test="${empty genTable.name}">
                            <form:form id="inputForm" modelAttribute="genTable" onsubmit="return loadDivForm('mainCenterDiv','inputForm','${ctx}/gen/genTable/form');"   method="post" class="form-horizontal">
                                <form:hidden path="id"/>
                                <br/>
                                <div class="form-group">
                                    <label class="col-sm-2 control-label">表名:</label>
                                    <div class="col-sm-4">
                                        <form:select path="name" class="form-control">
                                            <form:options items="${tableList}" itemLabel="nameAndComments" itemValue="name" htmlEscape="false"/>
                                        </form:select>
                                    </div>
                                    <div class="form-actions">
                                        <input id="btnSubmit" class="btn btn-primary" type="submit" value="下一步"/>&nbsp;
                                        <input id="btnCancel" class="btn" type="button" value="返 回" onclick="loadDiv('mainCenterDiv','${ctx}/gen/genTable/index')"/>
                                    </div>
                                </div>
                            </form:form>
                        </c:when>
                        <c:otherwise>
                            <form:form id="inputForm" modelAttribute="genTable"  onsubmit="return formSaveLoad('mainCenterDiv','inputForm','${ctx}/gen/genTable/save','${ctx}/gen/genTable/index');" method="post" class="form-horizontal">
                                <form:hidden path="id"/>
                                <fieldset>
                                    <legend>基本信息</legend>
                                    <div class="form-group">
                                        <label class="col-sm-2 control-label">表名:</label>
                                        <div class="col-sm-4">
                                            <form:input path="name" htmlEscape="false" maxlength="200" class="form-control" readonly="true"/>
                                        </div>
                                    </div>
                                    <div class="form-group">
                                        <label class="col-sm-2 control-label">说明:</label>
                                        <div class="col-sm-4">
                                            <form:input path="comments" htmlEscape="false" maxlength="200" class="form-control"/>
                                        </div>
                                    </div>
                                    <div class="form-group">
                                        <label class="col-sm-2 control-label">类名:</label>
                                        <div class="col-sm-4">
                                            <form:input path="className" htmlEscape="false" maxlength="200" class="form-control"/>
                                        </div>
                                    </div>
                                    <div class="form-group">
                                        <label class="col-sm-2 control-label">父表表名:</label>
                                        <div class="col-sm-4">
                                            <form:select path="parentTable" cssClass="form-control">
                                                <form:option value="">无</form:option>
                                                <form:options items="${tableList}" itemLabel="nameAndComments" itemValue="name" htmlEscape="false"/>
                                            </form:select>
                                        </div>
                                    </div>
                                    <div class="form-group">
                                        <label class="col-sm-2 control-label">当前表外键:</label>
                                        <div class="col-sm-4">
                                            <form:select path="parentTableFk" cssClass="form-control">
                                                <form:option value="">无</form:option>
                                                <form:options items="${genTable.columnList}" itemLabel="nameAndComments" itemValue="name" htmlEscape="false"/>
                                            </form:select>
                                        </div>
                                        <span class="help-inline">如果有父表，请指定父表表名和外键</span>
                                    </div>
                                    <div class="form-group hide">
                                        <label class="col-sm-2 control-label">备注:</label>
                                        <div class="col-sm-4">
                                            <form:textarea path="remarks" htmlEscape="false" rows="4" maxlength="200" class="form-control"/>
                                        </div>
                                    </div>
                                    <legend>字段列表</legend>
                                    <div class="form-group">
                                        <table id="contentTable" class="table table-bordered table-condensed">
                                            <thead><tr><th title="数据库字段名">列名</th><th title="默认读取数据库字段备注">说明</th><th title="数据库中设置的字段类型及长度">物理类型</th><th title="实体对象的属性字段类型">Java类型</th>
                                                <th title="实体对象的属性字段（对象名.属性名|属性名2|属性名3，例如：用户user.id|name|loginName，属性名2和属性名3为Join时关联查询的字段）">Java属性名称 <i class="icon-question-sign"></i></th>
                                                <th title="是否是数据库主键">主键</th><th title="字段是否可为空值，不可为空字段自动进行空值验证">可空</th><th title="选中后该字段被加入到insert语句里">插入</th>
                                                <th title="选中后该字段被加入到update语句里">编辑</th><th title="选中后该字段被加入到查询列表里">列表</th>
                                                <th title="选中后该字段被加入到查询条件里">查询</th><th title="该字段为查询字段时的查询匹配放松">查询匹配方式</th>
                                                <th title="字段在表单中显示的类型">显示表单类型</th><th title="显示表单类型设置为“下拉框、复选框、点选框”时，需设置字典的类型">字典类型</th><th>排序</th></tr></thead>
                                            <tbody>
                                            <c:forEach items="${genTable.columnList}" var="column" varStatus="vs">
                                                <tr${column.delFlag eq '1'?' class="error" title="已删除的列，保存之后消失！"':''}>
                                                    <td nowrap>
                                                        <input type="hidden" name="columnList[${vs.index}].id" value="${column.id}"/>
                                                        <input type="hidden" name="columnList[${vs.index}].delFlag" value="${column.delFlag}"/>
                                                        <input type="hidden" name="columnList[${vs.index}].genTable.id" value="${column.genTable.id}"/>
                                                        <input type="hidden" name="columnList[${vs.index}].name" value="${column.name}"/>${column.name}
                                                    </td>
                                                    <td>
                                                        <input type="text" name="columnList[${vs.index}].comments" value="${column.comments}" maxlength="200" class="form-control" style="width:100px;"/>
                                                    </td>
                                                    <td nowrap>
                                                        <input type="hidden" name="columnList[${vs.index}].jdbcType" value="${column.jdbcType}"/>${column.jdbcType}
                                                    </td>
                                                    <td>
                                                        <select name="columnList[${vs.index}].javaType" class="form-control" style="width:85px;*width:75px">
                                                            <c:forEach items="${config.javaTypeList}" var="dict">
                                                                <option value="${dict.value}" ${dict.value==column.javaType?'selected':''} title="${dict.description}">${dict.label}</option>
                                                            </c:forEach>
                                                        </select>
                                                    </td>
                                                    <td>
                                                        <input type="text" name="columnList[${vs.index}].javaField" value="${column.javaField}" maxlength="200" class="form-control"/>
                                                    </td>
                                                    <td>
                                                        <input type="checkbox" name="columnList[${vs.index}].isPk" value="1" ${column.isPk eq '1' ? 'checked' : ''}/>
                                                    </td>
                                                    <td>
                                                        <input type="checkbox" name="columnList[${vs.index}].isNull" value="1" ${column.isNull eq '1' ? 'checked' : ''}/>
                                                    </td>
                                                    <td>
                                                        <input type="checkbox" name="columnList[${vs.index}].isInsert" value="1" ${column.isInsert eq '1' ? 'checked' : ''}/>
                                                    </td>
                                                    <td>
                                                        <input type="checkbox" name="columnList[${vs.index}].isEdit" value="1" ${column.isEdit eq '1' ? 'checked' : ''}/>
                                                    </td>
                                                    <td>
                                                        <input type="checkbox" name="columnList[${vs.index}].isList" value="1" ${column.isList eq '1' ? 'checked' : ''}/>
                                                    </td>
                                                    <td>
                                                        <input type="checkbox" name="columnList[${vs.index}].isQuery" value="1" ${column.isQuery eq '1' ? 'checked' : ''}/>
                                                    </td>
                                                    <td>
                                                        <select name="columnList[${vs.index}].queryType" class="form-control">
                                                            <c:forEach items="${config.queryTypeList}" var="dict">
                                                                <option value="${fns:escapeHtml(dict.value)}" ${fns:escapeHtml(dict.value)==column.queryType?'selected':''} title="${dict.description}">${fns:escapeHtml(dict.label)}</option>
                                                            </c:forEach>
                                                        </select>
                                                    </td>
                                                    <td>
                                                        <select name="columnList[${vs.index}].showType" class="form-control" style="width:100px;">
                                                            <c:forEach items="${config.showTypeList}" var="dict">
                                                                <option value="${dict.value}" ${dict.value==column.showType?'selected':''} title="${dict.description}">${dict.label}</option>
                                                            </c:forEach>
                                                        </select>
                                                    </td>
                                                    <td>
                                                        <input type="text" name="columnList[${vs.index}].dictType" value="${column.dictType}" maxlength="200" class="form-control"/>
                                                    </td>
                                                    <td>
                                                        <input type="text" name="columnList[${vs.index}].sort" value="${column.sort}" maxlength="200" class="form-control"/>
                                                    </td>
                                                </tr>
                                            </c:forEach>
                                            </tbody>
                                        </table>
                                    </div>
                                </fieldset>
                                <div class="form-actions">
                                    <input id="btnSubmit" class="btn btn-primary" type="submit" value="保 存"/>&nbsp;
                                    <input id="btnCancel" class="btn" type="button" value="返 回" onclick="loadDiv('mainCenterDiv','${ctx}/gen/genTable/form')"/>
                                </div>
                            </form:form>
                        </c:otherwise>
                    </c:choose>
                </div>
            </div>
        </section>
    </div>
</div>